

//class Solution {
//    public ListNode removeNthFromEnd(ListNode head, int n) {
//        if (head == null) return null;
//        ListNode fast = head;
//        ListNode slow = head;
//        while (n != 0) {
//            fast = fast.next;
//            n--;
//        }
//        if (fast == null) return head.next;
//        while (fast != null && fast.next != null) {
//            fast = fast.next;
//            slow = slow.next;
//        }
//        ListNode next = slow.next;
//        if (next != null) slow.next = next.next;
//        else slow.next = null;
//        return head;
//    }
//}